package cn.itcast.java.lambda;

import java.util.HashMap;
import java.util.Map;

/**
 * Author itcast
 * Date 2021/10/13 14:53
 * 实现主类的方法
 */
public class EatableDemo {
    public static void main(String[] args) {
        //直接实例化一个类
        Eatable cat = new Cat();
        useEatable(cat);
        //使用匿名内部类
        useEatable(new Eatable() {
            @Override
            public void eat() {
                System.out.println("狗吃狗粮");
            }
        });
        //lambda 表达式实现 eat() 方法
        useEatable(
                //(参数列表)->{具体实现}
                //重写的是 eat() 无参构造方法
                () -> {
                    System.out.println("熊猫吃竹子");
                }
        );
    }

    public static void useEatable(Eatable e){
        e.eat();
    }
}
